//可选参数:函数在声明的时候,内部的参数使用了?进行修饰,那么就表示该参数可以传入也可以不传入
//默认参数:函数在声明的时候,内部的参数有自己的默认值
(()=>{
    const getfullName = function(firstName:string='东方',lastName?:string):string{
        if(lastName){
            return firstName + '_' + lastName
        }else{
            return firstName
        }

    }

    console.log(getfullName())
    console.log(getfullName('诸葛'))
    console.log(getfullName('诸葛','孔明'))
})() 